body {
    font-family: verdana, helvetica, arial, sans-serif;
    padding: 20px;
    font-size: 12px;
    margin: 0;
}

h2 {
    font-size: 18px;
    font-weight: bold;
    margin: 0;
    margin-bottom: 15px;
}

.demo-info {
    margin-bottom: 10px;
    padding: 0 0 12px 0;
    display: flex;
    gap: 12px;
}

.demo-tip {
    /*display: inline-block;*/
    width: 16px;
    height: 16px;
}

.label-top {
    display: block;
    height: 22px;
    line-height: 22px;
    vertical-align: middle;
}

#dg {
    width: 400px ;
    height: 250px ;
    text-align: center !important;
}

#dlg {
    width: 400px;
    height: 280px;
    padding: 10px 20px;
}

#fm {
    margin: 0;
    padding: 10px 30px 10px 30px;
}

.ftitle {
    font-size: 14px;
    font-weight: bold;
    color: #666666;
    padding: 5px 0;
    margin-bottom: 10px;
    border-bottom: 1px solid #cccccc;
}

.fitem {
    display: flex;
    flex-direction: row;
    margin-bottom: 5px;
}

.label{
    display: block;
    text-align: left;
    width: 120px;
}




/*
    将元素设为flex弹性布局容器，内部子元素成为flex项目

    css的display属性用于控制HTML元素在页面上的布局方式，决定元素如何生成和排列其内容
      其主要属性值及作用：
        block:(块级元素)
            元素独占一行，宽度默认填满父容器
            可以设置宽度，高度，内外边距
            参见元素: <div> <p> <h1>-<h6>
        inline:(行类元素)
            元素在一行内排列，宽度由内容决定
            无法设定宽度，高度和上下边距
            常见元素: <span> <a> <strong>
        inline-block(行内块元素)
            兼具行内和块级特性
            在一行内排列，但可以设置宽度，高度和边距
            适合制作导航菜单等需要水平排列的组件
        none(隐藏元素)
            元素完全从文档流中移除，不占据任何空间
            与visibility:hidden的区别在于后者仍保留空间
        flex(弹性布局)
            一维布局模型，提供更高效的容器内项目对齐和分布
            适合构建响应式布局和复杂组件
            (并且子元素不会继承父元素的flex属性)
        grid(网格布局)
            二维布局系统，可同时控制行和列
            适合构建整体页面布局和复杂网格结构

        后两者已经成为主流布局方式

        实际应用:
            将链接转换为按钮: a {dispaly: inline-block; padding: 10px 20px}
            创建水平导航：nav li { display: inline-block; }
            隐藏移动端元素：.mobile-menu { display: none; }
*/